
<!DOCTYPE html>
<html class="client-nojs" lang="en" dir="ltr">
<head>
<meta charset="UTF-8"/>
<title>Hugin translation guide - PanoTools.org Wiki</title>




<style media="screen" type="text/css" title="Screen style sheet"> @import url(manual.css); </style>

<meta name="generator" content="MediaWiki 1.35.3"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>





<!--[if lt IE 9]><![endif]-->
</head>
<body class="mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Hugin_translation_guide rootpage-Hugin_translation_guide skin-vector action-view skin-vector-legacy">


<div id="content" class="mw-body" role="main">
	<a id="top"></a>
	
	
	<h1 id="firstHeading" class="firstHeading" lang="en">Hugin translation guide</h1>
	<div id="bodyContent" class="mw-body-content">
		<div id="siteSub" class="noprint">From PanoTools.org Wiki</div>
		
		
		
		
		
		
		<div id="mw-content-text" lang="en" dir="ltr" class="mw-content-ltr"><div class="mw-parser-output"><div id="toc" class="toc" role="navigation" aria-labelledby="mw-toc-heading"><input type="checkbox" role="button" id="toctogglecheckbox" class="toctogglecheckbox" style="display:none" />
<ul>











</ul>
</div>

<h2><a name="Introduction"><span class="mw-headline">Introduction</span></a></h2>
<p>This page intends to provide guidance to translators of the Hugin project. Some terminology is very specific or used in a specific way in hugin, making it hard to find a close translation that fits the context of hugin in another language than English.
</p><p>If you were instead looking for information about the <i>translation parameters</i> TrX, TrY and TrZ, please have a look at the <a href="Image_positioning_model.html" title="Image positioning model">image positioning model</a>.
</p>
<h2><a name="Getting_Started_on_translations"><span class="mw-headline">Getting Started on translations</span></a></h2>
<ul><li>1. Get your language file</li></ul>
<dl><dd>Each language version of hugin uses a different *.po file (just like "fr.po" for French or "ja.po" for Japanese) containing all the translated strings. The country codes use the <a rel="nofollow" class="external text" href="http://www.loc.gov/standards/iso639-2/php/code_list.php">ISO 639-1</a> naming convention.</dd>
<dd>In general, you need the latest *.po file, usually the one for the language you want to modify. You can download it from the <a rel="nofollow" class="external text" href="http://sourceforge.net/p/hugin/hugin/ci/default/tree/src/translations/">Mercurial repository</a>: in this list of files navigate to your *.po file, click on the file name and then use the link "Download this file" to save the "raw" file to your local hard disk.</dd>
<dd>If there is yet no translation file for your language you can use the file hugin.pot and rename that using the above naming convention or just ask the <a rel="nofollow" class="external text" href="http://groups.google.com/group/hugin-ptx">developers list</a> for assistance.</dd></dl>
<ul><li>2. Edit your *.po file</li></ul>
<dl><dd>To edit the *.po or *.pot files, use <a rel="nofollow" class="external text" href="http://sourceforge.net/projects/poedit/">poedit</a> (it is a cross-platform PO files editor which runs on Mac OS X, Unix and Windows) or <a rel="nofollow" class="external text" href="http://kbabel.kde.org/">kbabel</a> (it runs on any KDE platform). Note that you don't have to translate everything if you don't have time or knowledge to do it all. Also <a href="Hugin_translation_guide.html#Do_not_translate:" title="Hugin translation guide">check below</a> for things that shouldn't be translated (like software names) or for some explanations on specific words.</dd>
<dd>Sort by translation to see untranslated entries first and start translating.</dd>
<dd>Watch out for <b>variables</b>, <b>keyboard shortcuts</b> and <b>line breaks</b>: be careful to include terms starting with a percent symbol ("%") unaltered since those are placeholders for values (see <a rel="nofollow" class="external text" href="https://www.autoitscript.com/autoit3/docs/functions/StringFormat.htm">overview</a>). Also watch for combinations of an ampersand symbol ("&amp;") plus the following character (a-x or A-X) since those represent keyboard shortcuts. You can use a translated character for these, but keep in mind that these shortcuts have to be unique in each (sub-)menu. A "\n" depicts a line break.</dd>
<dd>Items <b>marked as <i>fuzzy</i></b> actually don't use their "translation" in the GUI, so the user will see the original English string instead. These automagic suggestions naturally fail often, so please compare a fuzzy translation thoroughly with the original phrase. Remove the fuzzy tag when the translation is correct(ed).</dd>
<dd>Note on <b>comments</b>: When using a version of <b>Poedit before 1.4.3</b>, editing comments directly in the right pane doesn't work, the text isn't saved into the .po file. To edit comments, use the "edit comment" dialogue from the menu. With <b>Poedit 1.4.3 and later</b>, please note that to see the comment window you have to check "View / Show comment window", and to be able to modify the comment you must go to "File / Preferences..." and check "Comment window is editable" in the "Editor" tab. <b>Current versions</b> diplay comment icons in the left column by default, the comment itself is shown in the sidebar.</dd></dl>
<ul><li>3. Verify your translation</li></ul>
<dl><dd>In order to test your new translation and as well save some time for the developers who apply your file to trunk it's recommanded to <a rel="nofollow" class="external text" href="Hugin_translation_guide.html#How_to_check_the_translated_file_for_syntax_errors">check</a> your newly translated po file for syntax errors. It's also a good idea to <a rel="nofollow" class="external text" href="Hugin_translation_guide.html#Use_your_new_translation_file">temporarily load</a> your new translation file into the latest available hugin build.</dd></dl>
<ul><li>4. Submit your *.po file, or even better, commit your changes through Mercurial
<ul><li>You can submit your edited translation via hugin's <a rel="nofollow" class="external text" href="https://bugs.launchpad.net/hugin/">tracker</a> on launchpad (you'll need a launchpad account to log in). Add the tags "translation" and "hugin" and attach your file.</li>
<li><b>An even better solution</b>, but which the first time takes you a few more minutes to set everything up, is to use Hugin's revision control system. For more information see <a rel="nofollow" class="external text" href="Hugin_translation_guide.html#Become_a_Power_Translator">Become a Power Translator</a> below.</li></ul></li></ul>
<h2><a name="How_to_check_the_translated_file_for_syntax_errors"><span class="mw-headline">How to check the translated file for syntax errors</span></a></h2>
<p>The best way to check if your newly translated XX.po file hasn't any error, is to run the following command in a terminal (if you are under linux)
</p>
<pre>msgfmt -c --statistics XX.po  
</pre>
<p>(you will need to install the gettext package to use the msgfmt command)
</p><p>If you get as output the number of translated, unstranslated and fuzzy strings the file is ok. Else you get error messages indicating the line where the errors resides. Open the po file in a text editor, look for the line where the error lives and fix it. Finally run again the above command until you get no errors.
</p><p>Note: if you use Poedit, it gives you warning when the po file you are trying to save contains errors. In the error message read the line where the error is listed then close poedit and open the file in a text editor and look for errors in the specific line.
</p>
<h3><a name="Common_mistakes"><span class="mw-headline">Common mistakes</span></a></h3>
<ul><li>Remember that the first line in a po file need to be commented as shown here (note the # sign at the beggining of the line)</li></ul>
<pre># French translations for hugin package.
# Copyright (C) 2004 Pablo dAngelo
# This file is distributed under the same license as the hugin package.
# Jean-Luc Coulon (f5ibh) &lt;jean-luc.coulon@wanadoo.fr&gt;, 2004-2009, 2010.
</pre>
<ul><li>Watch carefully for retaining placeholders:</li></ul>
<dl><dd>If you take the following string:</dd></dl>
<pre>Open "%s" file 
</pre>
<dl><dd>the %s must remain the same in the translated string because it is a formatting placeholder where the code will display a  variable (e.g. a filename, a number etc...) at run time.  For example %s is a string and %0.3f is a number with three post-comma digits.</dd></dl>
<p><br />
</p>
<ul><li>Watch out for the new line (\n) indicator at the end of the string. For example in the string:</li></ul>
<pre>This is a test for a new line string\n
</pre>
<dl><dd>The \n symbol must remain at the end of the translated string</dd></dl>
<ul><li>Watch out for quotation marks ". They must be quoted as \"</li></ul>
<h2><a name="Use_your_new_translation_file"><span class="mw-headline">Use your new translation file</span></a></h2>
<p>poedit updates your PO file and creates a MO file for your language. You can rename your MO file into hugin.mo and replace the hugin.mo file from your current installation (don't forget to make a backup of the original MO file, just in case).
</p>
<ul><li>On <b>Windows</b> the MO file is in your hugin directory, in <tt>share\locale\<i>XX</i>\LC_MESSAGES\hugin.mo</tt>, where <i>XX</i> is your language.</li>
<li>On <b>Linux</b> the MO file is under <tt>/usr/local/share/locale/XX/LC_MESSAGES/hugin.mo</tt></li>
<li>On <b>Mac OS X</b> the MO file is inside the hugin bundle: just click on Hugin.app and from the context menu choose "Show package contents", from there it's under <tt>Contents/Resources/<i>XX</i>.lproj/locale/hugin.mo</tt> (<tt><i>XX</i></tt> is your language code).</li></ul>
<p>If you want to you can also rebuild hugin (doesn't have to be a heavy job when you only changed the .po file, the process only updates that part).
</p>
<h2><a name="Contribute_your_Translation"><span class="mw-headline">Contribute your Translation</span></a></h2>
<p>The preferred way is for translations to be contributed via the <a rel="nofollow" class="external text" href="https://bugs.launchpad.net/hugin/">tracker</a>.  If you don't want to use the tracker you can also post it as attachment to the mailing list, but the mailing list has a short memory and your hard work may be forgotten.
</p><p>To use the tracker, you need a <a rel="nofollow" class="external text" href="Hugin_Trackers.html#Launchpad_Account">Launchpad Account</a>.
</p><p>You can submit our translation via the web or via email.
</p>
<h3><a name="Web"><span class="mw-headline">Web</span></a></h3>
<ul><li>Log on with your Launchpad account.</li>
<li>Start reporting a <a rel="nofollow" class="external text" href="https://bugs.launchpad.net/hugin/+filebug">new ticket</a>.</li>
<li>Enter a title/summary (e.g. German Translation).</li>
<li>Launchpad will look for duplicates.  This is good for bug reports, but for updated translations you can ignore it, scroll down to the bottom of the page and hit the "No, I need to report a new bug".</li>
<li>On the reporting form, enter a description in the "Further Information" field, then scroll to the bottom and hit the link "Extra options".</li>
<li>There you will find an Attachment field. Hit it and browse to the .po file. When the bug tracker asks you if this is a patch: click yes, even though technically it isn't one. In this case it will help make developers aware of a file that needs to be reviewed and added to the codebase.</li>
<li>Click the "Submit Bug Report" button.</li></ul>
<h3><a name="eMail"><span class="mw-headline">eMail</span></a></h3>
<p>Reporting a new ticket by email works too, but there are some critical conditions:
</p>
<ul><li>Your email account must be registered with Launchpad.</li>
<li>You must have an OpenPGP key associated with it and known to Launchpad.</li>
<li>You must craft your email carefully.  A misplaced space or a typo can doom your report.</li>
<li>To be safe, use TEXT email, not HTML -- a good habit anyway.  In most email client you recognize the TEXT mode by the lack of a formatting toolbar).</li></ul>
<p>The message:
</p>
<ul><li>From: your Launchpad-registered email address</li>
<li>To: new@bugs.launchpad.net</li>
<li>Subject: title of the bug</li>
<li>Body:  description + carefully crafted commands.  Commands are usually at the end of the body.  One per line.  Each command line starts with a single space.</li>
<li>Enter the command " affects hugin" to assign the report to Hugin.</li>
<li>Enter the command " tag translation" to tag the report as being a translation.</li>
<li>Attach the file(s) to the email.</li>
<li>Send.  It takes about five minutes to process and you get an email back with the result.</li></ul>
<h2><a name="Become_a_Power_Translator"><span class="mw-headline">Become a Power Translator</span></a></h2>
<p>After adding your po file to Hugin's <a rel="nofollow" class="external text" href="https://bugs.launchpad.net/hugin/">tracker</a>, the developers still need to integrate it, which is not easy as it means dealing with conflicting version (but how should a developer know which one of two conflicting sentences in a foreign language is the right one?). Thus using the same Mercurial approach to translation reduces considerably the burden on the rest of the team and is very much appreciated. Translation is a development too!
</p><p>So <b>instead of adding your po file to the tracker</b>, you can integrate it yourself. You'll first need a <b>Sourceforge user account</b> (<a rel="nofollow" class="external text" href="http://sourceforge.net/account/registration/">register here</a> if you don't have one yet. Then tell the developers on the <a rel="nofollow" class="external text" href="http://groups.google.com/group/hugin-ptx/">mailing list</a> what your user account is, so that they can <b>grant you access to Mercurial</b>, the revision control system (you'll need this before following the next steps).
</p>
<h3><a name="The_first_time"><span class="mw-headline">The first time</span></a></h3>
<p><b>For Windows users</b>
</p><p><br />
</p>
<ul><li>1. Get and install <a rel="nofollow" class="external text" href="http://tortoisehg.bitbucket.org/">TortoiseHg</a>.</li>
<li>2. In the explorer create a new folder, e.g. hugin-hg. Then do a right click on the created folder and select "Clone" in the "TortoiseHG" submenu. Select the repository <a rel="nofollow" class="external free" href="http://hg.code.sf.net/p/hugin/hugin">http://hg.code.sf.net/p/hugin/hugin</a> as source path and select "Clone".</li>
<li>3. Now select "Repository Settings" in the "TortoiseHG" context menu of the folder.  In the section "Synchronize" add a new setting with an alias/name e.g. "writeRepo" and the URL <a rel="nofollow" class="external free" href="ssh://YOUR-SOURCEFORGE-USERNAME@hg.code.sf.net/p/hugin/hugin">ssh://YOUR-SOURCEFORGE-USERNAME@hg.code.sf.net/p/hugin/hugin</a> , close the settings dialog. (This needs to be done only once.)</li>
<li>4. You can commit your (partial) results anytime: right-click on the folder and select in the context menu "Hg Commit..." - enter a short text describing what you did (e.g.: "updated French translation"), check that only your modified .po file is selected and click OK. Note that you can select only the "translation" folder instead of "hugin-trunk" if you modified only files within "translation".</li>
<li>5. Open the folder context menu, open "TortoiseHG/Synchronize". Select your in step 2 created setting in the combobox and select "Push". (Or you can also push from the "Repository Explorer".)</li></ul>
<p><b>For Linux/Unix/OSX</b>
</p>
<ul><li>1. Get and install <a rel="nofollow" class="external text" href="http://mercurial.selenic.com/">Mercurial</a>. (<pre>apt-get install mercurial</pre> on Ubuntu/Debian,<pre>yum install mercurial</pre> on Fedora, <pre>emerge mercurial</pre> on Gentoo)</li>
<li>2. Get the full Hugin source code.</li></ul>
<pre>hg clone ssh://YOUR-SOURCEFORGE-USERNAME@hg.code.sf.net/p/hugin/hugin  hugin
</pre>
<ul><li>3. Do your translation work inside the folder src/translations</li>
<li>4. You can commit your (partial) results anytime by running the commands</li></ul>
<pre>hg pull
hg commit TRANSLATEDFILE.po -m "updated LANGUAGE translation"
hg push  
</pre>
<p><b>Important:</b> committed changes are only on your local disk.  You must push them to SourceForge to make them available to the project.
</p>
<h3><a name="The_following_times"><span class="mw-headline">The following times</span></a></h3>
<p>The next time you want to work on the translations, you'll have first to <b>retrieve the latest version of the files</b> (as someone else might have modified something in the meantime) before working on it and then commiting it again.
</p>
<dl><dt>For Windows users</dt>
<dd>Simply right-click your "hugin" folder and select "Synchronize" in the "TortoiseHG" menu. In the dialog select "Update" in the combobox "After pull" (You can select in the settings under "Synchronize" that this is the default setting). Now select "Pull".</dd></dl>
<dl><dt>For Linux/Unix/OSX</dt>
<dd>change into the folder with the files and execute</dd></dl>
<pre>hg pull 
hg up -c
</pre> 
<p>and then you can continue from step 3 above.
</p>
<h3><a name="Changing_branches"><span class="mw-headline">Changing branches</span></a></h3>
<p>Prior to a release, you probably want to focus your translation work on getting everything ready for that release. Every release has its own branch, so if you work on the default branch (like above), your work will not make it into the immediately following release.
</p><p>To change between different branches use "hg update":
</p>
<dl><dd>To switch to 2014.0 branch use "hg update 2014.0"</dd>
<dd>To switch to default branch back use "hg update default"</dd></dl>
<p>The current branch can be displayed with "hg branch". When you commit, the changeset goes into the currently selected branch.
</p>
<h3><a name="Extra_perk_-_Build_the_latest_Hugin"><span class="mw-headline">Extra perk - Build the latest Hugin</span></a></h3>
<dl><dd>If you're already here, you may want to also build and enjoy the latest Hugin. Some of the current contributors to the build, distribution and code of Hugin have learned this way. You are just a few clicks away from building your own bleeding edge Hugin. Find your platform in <a rel="nofollow" class="external text" href="http://wiki.panotools.org/Development_of_Open_Source_tools#Build_your_Own_Test_Builds">Build your Own Test Builds</a> section of the wiki and follow the instructions.</dd>
<dd>Welcome to the club!</dd></dl>
<h2><a name="Translation_guide_for_specific_terms"><span class="mw-headline">Translation guide for specific terms</span></a></h2>
<p><b>Note to translators, please add your language variant to the term on a new line in the same format as NL=<br /> Also add your own difficult terms that are not mentioned here.</b>
</p><p><b>Note to developers, please check and enhance the meanings of these terms if they are unclear or incorrect.</b>
</p>
<dl><dt>Aligning versus Finding control points</dt>
<dd>Problem= they appear to be similar or the same, can they be interchanged?</dd></dl>
<dl><dt>Anchor</dt>
<dd>Meaning=Reference</dd>
<dd>NL=referentie (was anker)</dd></dl>
<dl><dt>bundle</dt>
<dd>Meaning=A technique for distributing OS X software as a single file.</dd>
<dd>NL=bundle (bundel?)</dd></dl>
<dl><dt>bundled version</dt>
<dd>Meaning=? Any packaged software will contain multiple files, these files are said to be 'bundled' (not just OS X)</dd>
<dd>NL=ingebouwde versie (gebundelde versie?)</dd></dl>
<dl><dt>button</dt>
<dd>DE=Schaltfläche</dd></dl>
<dl><dt>Camera response (C. r. curve)</dt>
<dd>Meaning=it corresponds with photo-electrical transfer function, and I am not sure can I translate it to "opto-electic curve of camera" in my language, because stright tranlation of "camera response" statement sounds trivial and not clear.</dd>
<dd>PL=krzywa optoelektryczna aparatu?</dd></dl>
<dl><dt>control points</dt>
<dd>Meaning=corresponding areas in two images (or the same image for horizontal and vertical control points)</dd>
<dd>ET=juhtpunktid</dd>
<dd>NL=ijkpunten (was controle punten), IJkpunten bij hoofdletters</dd></dl>
<dl><dt>Crop factor</dt>
<dd>Meaning=The physical size of a CCD sensor relative to a 35mm frame.</dd></dl>
<dl><dt>Cropped (images)</dt>
<dd>Meaning=image cut smaller than the original size</dd>
<dd>Discussion=Should this be translated? Like Blend, this is jargon, may be clearer when untranslated?</dd>
<dd>ET=kärbitud (pildid)</dd>
<dd>NL=uitgesneden (afbeeldingen)</dd></dl>
<dl><dt>Custom parameters</dt>
<dd>Meaning=parameters other than standard (+context???)</dd>
<dd>NL=aangepaste parameters</dd></dl>
<dl><dt>Estimate (position, FoV, etc.)</dt>
<dd>Meaning=? in my book, estimate means an educated guess. I get the impression that a more exact term is intended for hugin. Where can this term be replaced with "calculate" or "determine"?</dd>
<dd>ET=määratlema</dd>
<dd>NL=bepalen (eng:determine), bereken (eng:calculate)  alternative suggestion: Schatten (eng:estimate)</dd></dl>
<dl><dt>Exposure blending (or Exposure fusion)</dt>
<dd>Meaning=Taking a bracketed photo stack and picking the best bits to create a new image. Hugin tries to use the phrase 'Exposure fusion' rather than 'blending' as the tool for this is <a href="Enfuse.html" title="Enfuse">enfuse</a>.</dd>
<dd>NL=Belichtings lagen samenvoegen (Note: enblend = samenvoegen; enfuse = belichtings lagen samenvoegen?)</dd></dl>
<dl><dt>Field of View</dt>
<dd>Meaning=Horizontal Angle of view</dd>
<dd>ET=vaateväli</dd>
<dd>NL=beeldhoek</dd></dl>
<dl><dt>flatfield</dt>
<dd>Meaning=An astronomical technique, using a photo taken with the lens covered or of an even white surface to calibrate normal photos</dd>
<dd>NL=flatfield (astrofoto jargon, ook in NL gebruikt)</dd></dl>
<dl><dt>flatfile</dt>
<dd>Meaning=?</dd>
<dd>NL=?</dd></dl>
<dl><dt>grayscale</dt>
<dd>Meaning=monochrome colourspace. Typically grayscale images can have many shades of gray as well as black and white.</dd>
<dd>ET=halltoonid</dd>
<dd>NL=grijsschaal (kan beter!)</dd></dl>
<dl><dt>High Dynamic Range (HDR)</dt>
<dd>Meaning=Luminance values are within a large numeric range (typically floating point with a linear response)</dd>
<dd>NL=Hoog Dynamisch Bereik (HDR)</dd></dl>
<dl><dt>image</dt>
<dd>Meaning=photo, scan, ....</dd>
<dd>ET=pilt</dd>
<dd>NL=afbeelding</dd>
<dd>DE=Bild</dd></dl>
<dl><dt>keypoint</dt>
<dd>Meaning=</dd>
<dd>DE=Merkmalspunkt (see <a rel="nofollow" class="external text" href="http://de.wikipedia.org/wiki/Scale-invariant_feature_transform">Article about SIFT</a> in the German Wikipedia)</dd></dl>
<dl><dt>Low Dynamic Range (LDR)</dt>
<dd>Meaning=Luminance values are within a small numeric range (typically 8-bit or 16bit integer with a non-linear response curve).</dd>
<dd>NL=Laag Dynamisch Bereik (LDR)</dd></dl>
<dl><dt>mapping</dt>
<dd>Meaning=render and distort an image to a different projection?</dd>
<dd>NL=translatie, afbeelding, vervorming, projectie?</dd></dl>
<dl><dt>Num. Transf.</dt>
<dd>Meaning=Numerical Transform.  Rotation of panorama roll, pitch and yaw by manually entering numbers.</dd>
<dd>NL=Num. Transf.</dd></dl>
<dl><dt>Photometric Alignment</dt>
<dd>Meaning=Determining relative exposure, camera response and vignetting</dd>
<dd>ET=fotomeetriline joondamine</dd>
<dd>NL=fotometrische uitlijning (beter?: fotometrische afstemming)</dd></dl>
<dl><dt>Photometric Optimisation</dt>
<dd>Meaning=Optimisation of non-mapping image parameters, such as 'Camera response', Vignetting and Exposure.</dd>
<dd>ET=fotomeetriline optimeerimine</dd>
<dd>NL=fotometrische optimalisatie</dd></dl>
<dl><dt>pyramid image</dt>
<dd>Meaning=This is the practice of creating a stack of successively smaller versions of an image, useful for many image manipulation tasks.</dd>
<dd>NL=piramidale afbeelding</dd></dl>
<dl><dt>Seam blending</dt>
<dd>Meaning=Taking two or more partially overlapping photos and blending then with a seam down the middle of the overlap.  The tool typically used for this is <a href="Enblend.html" title="Enblend">enblend</a></dd></dl>
<dl><dt>Stitcher (the tab)</dt>
<dd>Meaning= Where the actual combining of the images is done</dd>
<dd>ET=Ühendaja</dd>
<dd>NL=Samenvoegen (alt: Combineren, Naaien?)</dd></dl>
<dl><dt>Vertical or Horizontal guide</dt>
<dd>Meaning=Horizontal or Vertical "control points"</dd>
<dd>NL=h/v hulp (suggestie: ijklijnen)?</dd></dl>
<h3><a name="Do_not_translate:"><span class="mw-headline">Do not translate:</span></a></h3>
<ul><li>Autopano (program name)</li>
<li>Autopano-SIFT (program name)</li>
<li>Deflate  (zip method)</li>
<li>Enblend (program name)</li>
<li>EXR (HDR file type)</li>
<li>JPEG (file type)</li>
<li>LZW (zip method)</li>
<li>Nona (program name)</li>
<li>Packbits (zip method)</li>
<li>PTStitcher (program name)</li></ul>
<h2><a name="Technical_translation_issues"><span class="mw-headline">Technical translation issues</span></a></h2>
<p>Some strings don't appear to be translated, they are apparently generated by the GUI toolkit or the operating system. Most likely they will be in the same language as hugin, because very few people, other than translators, start a program with a specific language other than that of the environment.
</p><p>The file <tt>src/translations/ignored-entries.txt</tt> contains a list of ignored entries from the xrc files (which are used to declare most of the hugin UI). If you need to translate a sentence which is there, remove the line from the file and run the extract-messages.sh script to update the .po files.
</p><p>If you find a source term that isn't correct, spelling or meaning, probably best to bring it up with Pablo d'Angelo or on the hugin mailinglist: <a rel="nofollow" class="external autonumber" href="http://groups.google.com/group/hugin-ptx">[1]</a>
</p>
<h3><a name="List_of_source_string_problems"><span class="mw-headline">List of source string problems</span></a></h3>
<ul><li>calculate highest sensible width. (uses every image pixel)</li></ul>
<dl><dd>I can translate this literally, but is this even helpful in English? (this is a tooltip for the size calc button in the Stitcher tab)</dd></dl>
<p><br />
</p>
<h2><a name="Tips_and_Tricks"><span class="mw-headline">Tips and Tricks</span></a></h2>
<h3><a name="Running_hugin_in_a_specific_language"><span class="mw-headline">Running hugin in a specific language</span></a></h3>
<p>If you want to run hugin in another language than the default, use the following command (Linux with UTF8):
</p>
<pre>$ LANG=nl_NL.utf8 hugin
</pre>
<p>This will start hugin in dutch. Other languages have different names of course, try looking in <tt>/usr/share/i18n/locales/</tt>.
</p>
<h2><a name="Developer_info"><span class="mw-headline">Developer info</span></a></h2>
<h3><a name="Adding_new_strings"><span class="mw-headline">Adding new strings</span></a></h3>
<p>After adding new strings, translators need to find them in the .pot and .po files otherwise they won't get translated.
</p><p>Hugin has a script to extract the messages from both the .xrc files and the .cpp source code and insert them into the hugin.pot and .po files.  New strings are added and unused strings are marked as obsolete.
</p><p>Before running the script, make sure you have wxrc installed. On older Ubuntu, run <code>sudo apt-get install wxrc</code>.  On Ubuntu 10.4 it is <code>sudo apt-get install wx-common</code>.
</p><p>Then, add the new strings:
</p>
<pre>hg pull
hg up
cd src/translations
./extract-messages.sh
hg ci
hg push 
</pre>
<h3><a name="Applying_a_contributed_.po_file"><span class="mw-headline">Applying a contributed .po file</span></a></h3>
<p>You could just overwrite the original and commit, but this assumes the file is correctly formatted and hasn't lost any strings. Better to use <b>msgmerge</b> to merge the contributed .po file with the existing.  Hugin has a script to test what will happen.  Use <b>msgfmt</b> for a quick sanity check too:
</p>
<pre> src/translations/diff_po.pl src/translations/zh_CN.po /tmp/zh_CN.contributed.po
 msgmerge -o zh_CN.merged.po /tmp/zh_CN.contributed.po src/translations/zh_CN.po
 msgfmt -c --statistics zh_CN.merged.po
 msgfmt -c --statistics src/translations/zh_CN.po
 mv zh_CN.merged.po src/translations/zh_CN.po
 hg ci zh_CN.po -m 'Edited chinese translation'
 hg push
</pre>
<h3><a name="Statistics"><span class="mw-headline">Statistics</span></a></h3>
<p>msgfmt --statistics eo_XX.po
</p>
<h3><a name="Issues_That_Need_Work"><span class="mw-headline">Issues That Need Work</span></a></h3>
<ul><li>There are more than 1000 strings in the hugin.pot file.  The main translation problem we have now is that many of these strings are in the sourcecode, but not in bits that are used - i.e. there are strings that are being translated unnecessarily (the panodruid for example).</li>
<li>The .po files headers are inconsistent. Ideally they would all feature the same license and copyright notice; and they would list all contributors.</li></ul>
<h2><span id="Website_/_Release_Notes"></span><a name="Website_.2F_Release_Notes"><span class="mw-headline">Website / Release Notes</span></a></h2>
<p>Some translators contribute also translated release notes.  These are published on the web at <a rel="nofollow" class="external free" href="http://hugin.sourceforge.net/releases/">http://hugin.sourceforge.net/releases/</a> . Usually the release manager will draft the release notes in English early on in the release process.  Even if they are not linked, you can find them in the repository at <a rel="nofollow" class="external free" href="http://sourceforge.net/p/hugin/hugin-web/ci/default/tree/releases/">http://sourceforge.net/p/hugin/hugin-web/ci/default/tree/releases/</a>
</p><p><b>Important</b>: make sure you translate the file from the <a rel="nofollow" class="external text" href="http://sourceforge.net/p/hugin/hugin-web/ci/default/tree/releases/">repository</a> and not the resulting file displayed on the web, e.g. for 2017.0.0 translate the <i>raw</i> version of
<a rel="nofollow" class="external free" href="https://sourceforge.net/p/hugin/hugin-web/ci/default/tree/releases/2017.0.0/en.shtml">https://sourceforge.net/p/hugin/hugin-web/ci/default/tree/releases/2017.0.0/en.shtml</a> and not the current one from <a rel="nofollow" class="external free" href="http://hugin.sourceforge.net/releases/">http://hugin.sourceforge.net/releases/</a> - the former is the source for the page while the latter is the resulting page after server side includes and other server side transformations.
</p><p>Use the <a href="Hugin_translation_guide.html#Contribute_your_Translation" title="Hugin translation guide">bug tracker</a> to upload your translated html file.
</p><p>Thanks for your contributions!
</p>

<!--
Transclusion expansion time report (%,ms,calls,template)
100.00%    0.000      1 -total
-->


</div></div><div class="printfooter">Retrieved from "<a dir="ltr" href="https://wiki.panotools.org/index.php?title=Hugin_translation_guide&amp;oldid=15923">https://wiki.panotools.org/index.php?title=Hugin_translation_guide&amp;oldid=15923</a>"</div>
		</div></div></body></html>